#include "mozilla/ModuleUtils.h"
#include "nsIClassInfoImpl.h"
#include "MyComponent.h"

//static nsModuleComponentInfo components[] =
//{
//    {
//       MY_COMPONENT_CLASSNAME, 
//       MY_COMPONENT_CID,
//       MY_COMPONENT_CONTRACTID,
//       MyComponentConstructor,
//    }
//};

NS_GENERIC_FACTORY_CONSTRUCTOR(MyComponent)

NS_DEFINE_NAMED_CID(MY_COMPONENT_CID);

static const mozilla::Module::CIDEntry kSampleCIDs[] = {
    { &kMY_COMPONENT_CID, false, NULL, MyComponentConstructor },
    { NULL }
};
static const mozilla::Module::ContractIDEntry kSampleContracts[] = {
    { MY_COMPONENT_CONTRACTID, &kMY_COMPONENT_CID },
    { NULL }
};
static const mozilla::Module::CategoryEntry kSampleCategories[] = {
    { "my-category", "my-key", MY_COMPONENT_CONTRACTID },
    { NULL }
};
static const mozilla::Module kSampleModule = {
    mozilla::Module::kVersion,
    kSampleCIDs,
    kSampleContracts,
    kSampleCategories
};
NSMODULE_DEFN(MyComponent) = &kSampleModule;
NS_IMPL_MOZILLA192_NSGETMODULE(&kSampleModule)

